package com.yc.config;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.aliyun.green20220302.Client;
import com.aliyun.green20220302.models.TextModerationRequest;
import com.aliyun.green20220302.models.TextModerationResponse;
import com.aliyun.green20220302.models.TextModerationResponseBody;
import com.aliyun.teaopenapi.models.Config;
import com.aliyun.teautil.models.RuntimeOptions;
import com.yc.service.ContentScanService;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Scope;

@Data
@Configuration
@EnableConfigurationProperties({ContentScanProperties.class})
//当引入OssFileService接口时
@ConditionalOnClass(ContentScanService.class)
@Slf4j
public class ContentScanConfig {

    @Autowired
    private ContentScanProperties contentScanProperties;

    @Bean
    public Client client() throws Exception {
        Config config = new Config();
        config.setAccessKeyId(contentScanProperties.getAccessKeyId());
        config.setAccessKeySecret(contentScanProperties.getAccessKeySecret());
        //接入区域和地址请根据实际情况修改
        config.setRegionId("cn-shenzhen");
        config.setEndpoint("green-cip.cn-shenzhen.aliyuncs.com");
        //连接时超时时间，单位毫秒（ms）。
        config.setReadTimeout(6000);
        //读取时超时时间，单位毫秒（ms）。
        config.setConnectTimeout(3000);

        return new Client(config);
    }
//    @Bean
//    public Client client() {
//        Config config = new Config();
//        config.setAccessKeyId(contentScanProperties.getAccessKeyId());
//        config.setAccessKeySecret(contentScanProperties.getAccessKeySecret());
//        //接入区域和地址请根据实际情况修改
//        config.setRegionId("cn-shenzhen");
//        config.setEndpoint("green-cip.cn-shenzhen.aliyuncs.com");
//        //连接时超时时间，单位毫秒（ms）。
//        config.setReadTimeout(6000);
//        //读取时超时时间，单位毫秒（ms）。
//        config.setConnectTimeout(3000);
//        //设置http代理。
//        //config.setHttpProxy("http://10.10.xx.xx:xxxx");
//        //设置https代理。
//        //config.setHttpsProxy("https://10.10.xx.xx:xxxx");
//        // 注意，此处实例化的client请尽可能重复使用，避免重复建立连接，提升检测性能
//        Client client;
//        try {
//            client = new Client(config);
//        } catch (Exception e) {
//            log.error("初始化阿里云内容安全客户端失败", e);
//            throw new RuntimeException(e);
//        }
//        return client;
//    }
}
